package com.chinaisafe.user.service;

import com.chinaisafe.user.entity.SysMenu;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.chinaisafe.user.vo.request.SysMenuReqVO;
import com.chinaisafe.user.vo.response.SysMenuRespVO;

import java.util.List;

/**
 * SysMenuService
 * Description：菜单(资源)服务类
 *
 * @author tby
 * @date 2024-07-11 17:32:41
 */
public interface SysMenuService extends IService<SysMenu> {
     /**
      * 根据条件获取菜单(资源)分页列表
      * @param sysMenuReqVO 筛选参数
      * @return Page<SysMenuRespVO> 分页对象
      * @author tby
      * @date  2024-07-11 17:32:41
      */
     List<SysMenuRespVO> getList(SysMenuReqVO sysMenuReqVO);

     /**
      * 新增菜单(资源)
      * @param sysMenuReqVO 新增参数
      * @return SysMenuRespVO 响应参数
      * @author tby
      * @date 2024-07-11 17:32:41
      */
      SysMenuRespVO add(SysMenuReqVO sysMenuReqVO);

     /**
      * 根据id编辑菜单(资源)
      * @param sysMenuReqVO 修改参数
      * @return SysMenuRespVO 响应参数
      * @author tby
      * @date 2024-07-11 17:32:41
      */
      SysMenuRespVO update(SysMenuReqVO sysMenuReqVO);

     /**
      * 新增或修改菜单(资源)
      * @param sysMenuReqVO 编辑修改参数
      * @return SysMenuRespVO 响应参数
      * @author tby
      * @date 2024-07-11 17:32:41
      */
      SysMenuRespVO addOrUpdate(SysMenuReqVO sysMenuReqVO);


     /**
      * 根据id删除菜单(资源)
      * @param sysMenuIds id数组
      * @author tby
      * @date 2024-07-11 17:32:41
      */
     void deleteByIds(Long[] sysMenuIds);
}
